草庐IT

javascript - 从 HTMLElement 获取 google.maps.Map 实例

全部标签

Ruby 类实例变量与类变量

我读了https://stackoverflow.com/questions/826734/when-do-ruby-instance-variables-get-set但我对何时使用类实例变量有两种看法。类变量由一个类的所有对象共享,实例变量属于一个对象。如果我们有类变量,就没有多少空间可以使用类实例变量了。谁能解释一下这两者之间的区别以及何时使用它们?这是一个代码示例:classS@@k=23@s=15defself.s@senddefself.k@@kendendpS.s#15pS.k#23更新:我现在明白了!类实例变量不沿继承链传递。 最佳答案

ruby - 我可以在不包含 Ruby 模块的情况下调用实例方法吗?

背景:我有一个模块声明了一些实例方法moduleUsefulThingsdefget_file;...defdelete_file;...defformat_text(x);...end我想从一个类中调用其中一些方法。你通常如何在ruby​​中这样做:classUsefulWorkerincludeUsefulThingsdefdo_workformat_text("abc")...endend问题includeUsefulThings从UsefulThings引入所有方法。在这种情况下,我只需要format_text并且明确不需要get_file和delete_file。我可以看到几

ruby - 实例变量 : self vs @

这是一些代码:classPersondefinitialize(age)@age=ageenddefage@ageenddefage_difference_with(other_person)(self.age-other_person.age).absendprotected:ageend我想知道的是在age_difference_with方法中使用@age和self.age的区别。 最佳答案 写@age直接访问实例变量@age。编写self.age告诉对象向自己发送消息age,它通常会返回实例变量@age—但可以做任何数字其他事

ruby - 获取当前正在执行的方法的名称

$0是顶级Ruby程序的变量,但是当前方法有吗? 最佳答案 比我的第一个答案更好的是你可以使用__method__:classFoodeftest_method__method__endend这会返回一个符号——例如,:test_method。要将方法名称作为字符串返回,请改为调用__method__.to_s。注意:这需要Ruby1.8.7。 关于ruby-获取当前正在执行的方法的名称,我们在StackOverflow上找到一个类似的问题: https://

ruby-on-rails - Rails 获取 "each"循环的索引

这个问题在这里已经有了答案:FindingoutcurrentindexinEACHloop(Ruby)[duplicate](2个答案)AutomaticcounterinRubyforeach?(8个答案)关闭6年前。所以我有这个循环:我如何在循环中获取“页面”的索引?

ruby - 给定一个类,看看实例是否有方法(Ruby)

我知道在Ruby中我可以使用respond_to?来检查一个对象是否有特定的方法。但是,给定类,我如何检查实例是否具有特定方法?例如,类似Foo.new.respond_to?(:bar)但我觉得必须有比实例化新实例更好的方法。 最佳答案 我不知道为什么每个人都建议你应该使用instance_methods和include?什么时候method_defined?完成工作。classTestdefhello;endendTest.method_defined?:hello#=>true注意如果您是从另一种OO语言转向Ruby,或者您认

ruby - 如何从Ruby中的文件路径获取不带扩展名的文件名

如何从Ruby中的文件路径获取文件名?例如,如果我的路径是"C:\projects\blah.dll"而我只想要“blah”。Ruby中有LastIndexOf方法吗? 最佳答案 尝试File.basenameReturnsthelastcomponentofthefilenamegiveninfile_name,whichmustbeformedusingforwardslashes(``/’’)regardlessoftheseparatorusedonthelocalfilesystem.Ifsuffixisgivenandp

ruby - 如何在 Ruby 中获取当前工作目录的绝对路径?

我在Windows上运行Ruby,但我不知道这是否会有所不同。我只想获取当前工作目录的绝对路径。这可能来自irb吗?显然,从脚本中可以使用File.expand_path(__FILE__)但是我从irb尝试了以下操作并得到了“权限被拒绝”错误:File.new(Dir.new(".").path).expand 最佳答案 Dir.pwd为当前工作目录http://ruby-doc.org/core/Dir.html#method-c-pwd 关于ruby-如何在Ruby中获取当前工作目

ruby - 在 Ruby 中获取 system() 调用的输出

如果我使用Kernel#system调用命令在Ruby中,我如何获得它的输出?system("ls") 最佳答案 我想扩展和阐明chaos'sanswer有一点。如果您用反引号将您的命令括起来,那么您根本不需要(明确地)调用system()。反引号执行命令并将输出作为字符串返回。然后,您可以将值分配给一个变量,如下所示:output=`ls`poutput或printfoutput#escapesnewlinechars 关于ruby-在Ruby中获取system()调用的输出,我们在S

ruby - 使用 Ruby 从文件夹中获取所有文件的名称

我想使用Ruby从文件夹中获取所有文件名。 最佳答案 您还可以选择快捷方式Dir["/path/to/search/*"]如果您想在任何文件夹或子文件夹中查找所有Ruby文件:Dir["/path/to/search/**/*.rb"] 关于ruby-使用Ruby从文件夹中获取所有文件的名称,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1755665/